/*
 *  Copyright (C) [2024] smartboot [zhengjunweimail@163.com]
 *
 *  企业用户未经smartboot组织特别许可，需遵循AGPL-3.0开源协议合理合法使用本项目。
 *
 *   Enterprise users are required to use this project reasonably
 *   and legally in accordance with the AGPL-3.0 open source agreement
 *  without special permission from the smartboot organization.
 */

package tech.smartboot.feat.ai.embedding;

import tech.smartboot.feat.ai.Options;

/**
 * @author 三刀 zhengjunweimail@163.com
 * @version v1.0.0
 */
public class EmbeddingOptions extends Options {
    /**
     * AI模型名称
     */
    private String model;

    public EmbeddingOptions debug(boolean debug) {
        super.debug(debug);
        return this;
    }


    public EmbeddingOptions baseUrl(String baseUrl) {
        super.baseUrl(baseUrl);
        return this;
    }


    public EmbeddingOptions model(String model) {
        this.model = model;
        return this;
    }

    public String model() {
        return model;
    }

    public EmbeddingOptions model(EmbeddingModelVendor model) {
        return baseUrl(model.baseUrl()).model(model.model());
    }


    public EmbeddingOptions apiKey(String apiKey) {
        super.apiKey(apiKey);
        return this;
    }
}
